package br.com.wagnerfull.precoimovel.cadastro;

import java.util.HashMap;
import java.util.Map;

import android.content.ContentValues;
import br.com.wagnerfull.precoimovel.dao.EntidadeMobileEntity;

public class ItemParametroCalculo extends EntidadeMobileEntity {

	/**
	 * 
	 */
	private static final long serialVersionUID = -6864462819850978045L;
	private Integer id;
	private Double valor;
	private ParametroCalculo parametroCalculo;

	private Taxa taxa;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Double getValor() {
		return valor;
	}

	public void setValor(Double valor) {
		this.valor = valor;
	}

	public Double getResultado(Double valorImovel) {
		if (valor != null && valorImovel != null) {
			/*
			 * if (taxa.getFlagImovelNovo().equals(Boolean.FALSE)){ return 0D; }
			 * if (taxa.getFlagImovelUsado().equals(Boolean.FALSE)){ return 0D;
			 * }
			 */
			if (taxa.getFlagPercentual().equals(Boolean.FALSE)) {
				return valor;
			}
			return valorImovel * (valor / 100);
		}
		return 0D;
	}

	public ParametroCalculo getParametroCalculo() {
		return parametroCalculo;
	}

	public void setParametroCalculo(ParametroCalculo parametroCalculo) {
		this.parametroCalculo = parametroCalculo;
	}

	public Taxa getTaxa() {
		return taxa;
	}

	public void setTaxa(Taxa taxa) {
		this.taxa = taxa;
	}

	public ItemParametroCalculo() {
		super();
	}

	public ItemParametroCalculo(Integer id, Double valor, Taxa taxa,
			ParametroCalculo parametroCalculo) {
		this.id = id;
		this.valor = valor;
		this.taxa = taxa;
		this.parametroCalculo = parametroCalculo;
	}

	@Override
	public Map<String, String> getMapeamento() {
		Map<String, String> retorno = new HashMap<String, String>();
		retorno.put("id", "id");
		retorno.put("valor", "valor");
		retorno.put("parametroCalculo", "id_parametro");
		retorno.put("taxa", "id_taxa");
		return retorno;
	}

	@Override
	public ContentValues getContentValues() {
		ContentValues contentValues = new ContentValues();
		contentValues.put("id", this.id);
		contentValues.put("valor", this.valor);
		contentValues.put("id_parametro", this.parametroCalculo.getId());
		contentValues.put("id_taxa", this.taxa.getId());
		return contentValues;
	}

	@Override
	public String toString() {
		return "item_parametro_calculo";
	}

}
